summaryrefslogtreecommitdiffstats
path: root/src/org/uic/barcode/ticket/api/spec/uicBarcodeHeader0.1.asn
diff options
context:
space:
mode:
Diffstat (limited to 'src/org/uic/barcode/ticket/api/spec/uicBarcodeHeader0.1.asn')
-rw-r--r--src/org/uic/barcode/ticket/api/spec/uicBarcodeHeader0.1.asn151
1 files changed, 151 insertions, 0 deletions
diff --git a/src/org/uic/barcode/ticket/api/spec/uicBarcodeHeader0.1.asn b/src/org/uic/barcode/ticket/api/spec/uicBarcodeHeader0.1.asn
new file mode 100644
index 0000000..2999d18
--- /dev/null
+++ b/src/org/uic/barcode/ticket/api/spec/uicBarcodeHeader0.1.asn
@@ -0,0 +1,151 @@
+-- Creator: ASN.1 Editor (http://asneditor.sourceforge.net)
+-- Author: ClemensGantert
+-- Created: Tue Aug 11 11:40:28 CEST 2015
+ASN-Module DEFINITIONS AUTOMATIC TAGS ::= BEGIN
+
+-- imports and exports
+-- EXPORTS ALL;
+
+
+-- ##############################################################################################
+-- #
+-- # UIC barcode header - first draft
+-- #
+-- ##############################################################################################
+
+
+-- ##############################################################################################
+-- #
+-- # Naming and encoding conventions
+-- #
+-- # Elements included as String and as Numeric values:
+-- # Some elements are included in different formats to reduce the data size.
+-- # These elements must be included only once.
+-- # These elements are named with the same name and appendix
+-- # Num (numeric values)
+-- # IA5 (String values according to ASN IA5String (7Bit))
+-- #
+-- # RICS codes must be used to encode companies (issuer, product owner, ...) where available
+-- # other codes are possible based on bilateral agreements
+-- # the format is kept more flexible to cover upcoming extensions of the RICS code by ERA
+-- #
+-- # Stations can be coded using the UIC and upcoming ERA code lists. Proprietary codes are
+-- # possible based on bilateral agreements. Format: 1..9999999 or alphanumeric without
+-- # special character (IA5String)
+-- #
+-- #
+-- # ! INTEGERS must not exceed the value of 9,223,372,036,854,775,807 (64 bit) even in case
+-- # ! they are unrestricted!!!
+-- # !
+-- # ! Some elements like ReferenceNum or cardIdNum are defined as an unrestricted integer.
+-- # ! Unlike other numerical values the cardIdNum and referenceNum can be larger than a usual 32 bit Integer
+-- # ! Some ASN.1 implementation tools are limited to 32 bit integers which is too small.
+-- # ! Please ensure to use a tool capable of dealing with larger numbers.
+-- #
+-- # BOOLEAN is always non optional
+-- #
+-- # Encoding of time:
+-- # time is encoded as the number of minutes of the day 0 = 00:00, 1440 = 24:00,
+-- # time data elements end with "time" in their name
+-- #
+-- # Encoding of date:
+-- # .........................................................................................................
+-- # The issuing date is given in UTC, but some other date values are given in local time where the exact time zone is not known.
+-- #
+-- #
+-- #
+-- # ASN.1 Extensions:
+-- #
+-- # The specification makes use of extension (",...").
+-- # These extesions might be defined in future versions of the UIC specification
+-- # Implementations must support the extension feature of ASN.1, at least they must be able to ignore extensions while decoding the data
+-- # ASN.1 extensions will be defined by UIC. It is not allowed to define bilateral extensions.
+-- #
+-- # Bilateral Extensions:
+-- # Bilateral extensions can be included in the data element "ExtensionData".
+-- #
+-- #
+-- #
+-- #########################################################################################
+
+
+-- ############################################################################################
+
+
+-- type assignments
+
+ -- #########################################################################################
+ -- the basic entry point of the data structure
+ -- the data include:
+ -- -issuer informations
+ -- -the details of the transport document
+ -- -informations required for the control process
+ -- -informations on the travelers independent from the transport document
+ -- -proprietary extensions
+ --
+ -- ##########################################################################################
+ UicBarcodeHeader ::= SEQUENCE {
+ -- format type
+ format IA5String,
+ -- "UIC" = UIC ticket
+
+ version Integer (1..16),
+
+ -- provider of the signature (RICS code)
+ securityProviderNum INTEGER (1..32000) OPTIONAL,
+ securityProviderIA5 IA5String OPTIONAL,
+
+
+ staticData SEQUENCE OF DataType,
+ staticSignature SignatureType OPTIONAL,
+
+
+
+ -- additional dynamic data i.e. phone number, IMEI, timestamp , .... --> To be defined separately
+ dynamicDataFormat IA5String OPTIONAL,
+ dynamicData OCTET STRING OPTIONAL,
+ dynamicPublicKey OCTET STRING OPTIONAL,
+ dynamicSignature SignatureType OPTIONAL
+
+ -- proprietary data defined bilaterally
+ extension SEQUENCE OF ExtensionData OPTIONAL
+ ,...
+
+ }
+
+ DataType ::= SEQUENCE {
+ staticDataFormat IA5String DEFAULT "FCB1",
+ -- FCB1 FCB version 1
+ -- 1080XYZ
+ staticData OCTET STRING
+ }
+
+
+
+ SignatureType ::= SEQUENCE {
+ signingAlg IA5String,
+ keyId IA5String (SIZE(1..5)),
+ signature OCTET STRING,
+ }
+
+
+
+ -- ###########################################################################################
+ -- generic non standard extension element
+ -- the generic non - standard element contains:
+ -- - an extension id to distinguish different extensions
+ -- - the extension data as binary data
+ -- proprietary extensions are by definition proprietary. This standard provides
+ -- the means to identify these extensions
+ -- within the data and to skip these data.
+ -- the evaluation of these data and the unique identification of the extensions
+ -- via the extension id is in the
+ -- responsibility of the railways which use these extensions.
+ -- ###########################################################################################
+ ExtensionData ::= SEQUENCE {
+ extensionId IA5String,
+ extensionData OCTET STRING
+ }
+
+
+END \ No newline at end of file